#!/usr/bin/python
# -*- coding: UTF-8 -*-
from configparser import ConfigParser
import os

"""
读取配置文件类
"""


class ConfigUtil:
    """
    读取配置文件信息
    """

    def __init__(self):
        pass

    # 得到sqlite3数据库的全路径
    @staticmethod
    def get_sqlite3_path():
        # 获取当前文件的上级目录的路径
        parent_dir = os.path.dirname(os.path.abspath(__file__))
        # print(parent_dir)
        # 拼接得到要读取的文件的完整路径
        file_path = os.path.join(parent_dir, '..', '..', 'instance', 'flaskr.sqlite')
        # print(file_path)
        return file_path

    # 得配置文件中到配置项的值
    @staticmethod
    def get_config_option_value(section_name_i: str, option_name_i: str):
        parent_dir = os.path.dirname(os.path.abspath(__file__))
        file_path = os.path.join(parent_dir, '..', 'config.ini')
        # 创建解析器对象
        config = ConfigParser()
        # 读取配置文件
        config.read(file_path)
        # 读取特定section下的参数
        option_name_value = config.get(section_name_i, option_name_i)
        return option_name_value


if __name__ == '__main__':
    print(ConfigUtil.get_sqlite3_path())
    print(ConfigUtil.get_config_option_value('Section1', 'sqlite3_path'))
